Many different types of devices have been developed for inputting commands into a machine. For example, hand-manipulated input devices, such as computer mice, joysticks, trackballs, touchpads, and keyboards, commonly are used to input instructions into a computer by manipulating the input device. Such input devices allow a user to control movement of a virtual pointer, such as a cursor, across a computer screen, select or move an icon or other virtual object displayed on the computer screen, and open and close menu items corresponding to different input commands. Input devices commonly are used in both desktop computer systems and portable computing systems.
Input devices typically include a mechanism for converting a user input into user interface control signals, such as cursor position data and scrolling position and distance data. Although some types of input device use electromechanical transducers to convert user manipulation of the input device into user interface control signals, most recently developed input devices use optical navigation sensors to convert user manipulation of the input device into user interface control signals. The optical navigation sensors employ optical navigation technology that measures changes in position by acquiring a sequence of images of light reflecting from a surface and mathematically determining the direction and magnitude of movement over the surface from comparisons of corresponding features in the images.
In addition to generating input signals in response to tracked movement, many optical input devices include buttons or other electromechanical selection devices to enable user to input selection commands (oftentimes referred to as single or multiple “click” commands). Such selection devices typically enable user to select objects, open and close virtual folders, and execute software applications.
With the increasing trends of minimizing the sizes of portable electronic devices and combining multiple functionalities into single devices, there is a constant push toward reducing the space required for implementing input device functionality. What are needed are systems and methods that can optically detect click events and can be integrated with other input device functionality without significantly increasing space requirements.